<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- saved from url=(0014)about:internet -->
<html xmlns:MSHelp="http://www.microsoft.com/MSHelp/" lang="en-us" xml:lang="en-us"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<meta name="DC.Type" content="topic">
<meta name="DC.Title" content="Introducing Intel&reg; Threading Building Blocks">
<meta name="DC.subject" content="Intel&reg; Thread Building Blocks, Overview">
<meta name="keywords" content="Intel&reg; Thread Building Blocks, Overview">
<meta name="DC.Format" content="XHTML">
<meta name="DC.Identifier" content="introducing">
<meta name="DC.Language" content="en-US">
<link rel="stylesheet" type="text/css" href="../intel_css_styles.css">
<title>Introducing Intel&reg; Threading Building Blocks</title>
<xml>
<MSHelp:Attr Name="DocSet" Value="Intel"></MSHelp:Attr>
<MSHelp:Attr Name="Locale" Value="kbEnglish"></MSHelp:Attr>
<MSHelp:Attr Name="TopicType" Value="kbReference"></MSHelp:Attr>
</xml>
</head>
<body id="introducing">
 <!-- ==============(Start:NavScript)================= -->
 <script src="..\NavScript.js" language="JavaScript1.2" type="text/javascript"></script>
 <script language="JavaScript1.2" type="text/javascript">WriteNavLink(1);</script>
 <!-- ==============(End:NavScript)================= -->
<a name="introducing"><!-- --></a>

 
  <h1 class="topictitle1">Introducing Intel&reg; Threading Building Blocks</h1>
 
   
  <div> 
	 <div class="section"> 
		<p>Intel&reg; Threading Building Blocks (Intel&reg; TBB) is a
		  library that supports scalable parallel programming using standard ISO C++
		  code. It does not require special languages or compilers. It is designed to
		  promote scalable data parallel programming. Additionally, it fully supports
		  nested parallelism, so you can build larger parallel components from smaller
		  parallel components. To use the library, you specify tasks, not threads, and
		  let the library map tasks onto threads in an efficient manner. 
		</p>
 
		<p>Many of the library interfaces employ generic
		  programming, in which interfaces are defined by requirements on types and not
		  specific types. The C++ Standard Template Library (STL) is an example of
		  generic programming. Generic programming enables Intel&reg; Threading Building
		  Blocks to be flexible yet efficient. The generic interfaces enable you to
		  customize components to your specific needs. 
		</p>
 
		<p>The net result is that Intel&reg; Threading Building
		  Blocks enables you to specify parallelism far more conveniently than using raw
		  threads, and at the same time can improve performance. 
		</p>
 
		<p>This document is a reference manual. It is
		  organized for looking up details about syntax and semantics. You should first
		  read the 
		  <em>Intel&reg; Threading Building Blocks Getting Started Guide</em> and the 
		  <em>Intel&reg; Threading Building Blocks Tutorial</em> to learn how to use
		  the library effectively. The 
		  <em>Intel&reg; Threading Building Blocks Design Patterns</em> document is
		  another useful resource. 
		</p>
 
		<div class="Note"><h3 class="NoteTipHead">
					Tip</h3> 
		  <p>Even experienced parallel programmers should read
			 the 
			 <em>Intel&reg; Threading Building Blocks Tutorial</em> before using this
			 reference guide because Intel&reg; Threading Building Blocks uses a surprising
			 recursive model of parallelism and generic algorithms. 
		  </p>
 
		</div> 
	 </div>
 
	 <p> 
	 
<div class="tablenoborder"><table cellpadding="4" summary="" frame="border" border="1" cellspacing="0" rules="all"> 
		   
		  <thead align="left">
			 <tr>
				<th class="cellrowborder" align="left" valign="top" width="100%" id="d90964e74">
				  <p>Optimization Notice
				  </p>

				</th>

			 </tr>
</thead>
 
		  <tbody> 
			 <tr> 
				<td class="bgcolor(#ccecff)" bgcolor="#ccecff" valign="top" width="100%" headers="d90964e74 ">
				  Intel's compilers may or may not optimize to the same degree for non-Intel
				  microprocessors for optimizations that are not unique to Intel microprocessors.
				  These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other
				  optimizations. Intel does not guarantee the availability, functionality, or
				  effectiveness of any optimization on microprocessors not manufactured by Intel.
				  Microprocessor-dependent optimizations in this product are intended for use
				  with Intel microprocessors. Certain optimizations not specific to Intel
				  microarchitecture are reserved for Intel microprocessors. Please refer to the
				  applicable product User and Reference Guides for more information regarding the
				  specific instruction sets covered by this notice. 
				  <p>Notice revision #20110804 
				  </p>

				</td>
 
			 </tr>
 
		  </tbody>
 
		</table>
</div>
 
	 </p>
 
  </div>
 

</body>
</html>
